<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="../js/1.js"></script>
    <script src="../js/2.js"></script>
    <script src="../js/3.js"></script>
</head>
<body>
    
</body>
<script>
    // 历史上，JavaScript 一直没有模块（module）体系，无法将一个大程序拆分成互相依赖的小文件，再用简单的方法拼装起来。
    // 传统JS 其实是可以通过引入外部JS文件 => 将大的程序拆分成相互依赖的小程序 (代码复用/后期维护更方便)

    // 引入外部js
    // 缺点=> 分离了,但是引入时,还是作为全局变量/方法  => 都挂载到window(造成全局污染) 
    // console.log(a);
    // console.log(addA);
    // console.log(reduceA);

    // 闭包版  => 减少全局变量的使用
    // var obj = handlerA();
    // console.log(obj);
    // console.log(_A);

    // AMD CMD (了解)  CommonJS(NodeJS)  => 闭包的升级版


    // ES6 模块化  => 直接用ES6模块化 
    // 将一个大程序拆分成互相依赖的小文件, 在通过简单的方式拼装起来

    // 优点:
    // 1. 将一个大程序拆分成互相依赖的小文件 => 代码分离/代码复用
    // 2. 按需暴露 按需引入
    // 模块之间也是可以相互引入的



</script>
</html>